home *** CD-ROM | disk | FTP | other *** search
- /*****************************************************************************/
- / ファイル管理支援 ROOTLIST V0.1L10 /
- / AUTHOR. さもな /
- / DATE. 1993. 1. 5 /
- /*****************************************************************************/
-
- ☆はじめに
-
- 通信を通じて集められる画像データやMIDIデータのコレクターは、
- その効率的な管理に頭を悩ませていることと思います。少なくとも私は、
-
- 『あ~~、この絵って見たことある。課金が~~』
- 『うっ、あのデータは何枚目のフロッピーだっけ』
- 『重複を避けないと、フロッピーの無駄だよな~』
-
- と、いった目に何十回もあっています。すべてのデータをハードディスク
- に入れて置ければ、調べるのも楽ですが、経済的な問題でそれは無理です。
- 大抵は、フロッピーに細切れに入れておいて、これが何十枚も溜まってしま
- い、収拾が付かなくなってしまいます。しかし、データは一般に大きく、
- 課金や電話代が無視できないので、なるべく重複は避けたいのです。既に
- データの総数が2000を越えたような人では、『見たことすら忘れている』と
- いうおまぬけな事態もありえます。
-
- 一時期は、データベースの導入を検討したこともありますが、ズボラな
- 性分なのでこんなのは長続きしません。しかも、通信ソフトの子プロセスで
- は、データベースは大きすぎて起動すらできないのです。通信で見ている
- リストのファイル名に見覚えがある気がするのだけれど、見ていない気も
- する。喉に骨が刺さったような気分になってしまいます。ままよ、と思い
- ダウンロードしてみると、やっぱり昔に手に入れて、ごちゃごちゃのフロ
- ッピーの山に埋もれていたデータだったりすると、半泣きです。
-
- ここまで読んできて、自分に関係ないと思われる方は、これを使用する
- 価値は全くありません。『むむ、確かにそういう経験がある』という人は
- 以後の基本編を読み進めてください。
-
-
- ☆基本編
-
- 試しに、MS-DOSかTOWNS-OSのコマンドモードから、
-
- D> ROOTLIST D:
-
- などと、入力してください。どうなったでしょうか。
-
- AUTOEXEC.BAT 845 TOWNSSYS.TEM
- CONFIG.SYS 291 TOWNSSYS.TEM
- CONSOLE.EXE 37312 TOWNSSYS.TEM
- CONTROL.EXE 44068 TOWNSSYS.TEM
- DOS.BAT 128 TOWNSSYS.TEM
- OAK2USR.DIC 6144 TOWNSSYS.TEM
- RUN386.EXE 78496 TOWNSSYS.TEM
- SIDEWORK.BIN 12800 TOWNSSYS.TEM
- TBIOS.BIN 94208 TOWNSSYS.TEM
- TBIOS.SYS 7050 TOWNSSYS.TEM
- TMENU.BAT 225 TOWNSSYS.TEM
- TMENU.EXP 343292 TOWNSSYS.TEM
- TMENU.IF2 1527 TOWNSSYS.TEM
- TMENU.ITM 4511 TOWNSSYS.TEM
- TMENU.PAL 82 TOWNSSYS.TEM
- TMENU.TIF 154112 TOWNSSYS.TEM
- TMENU.WIN 488 TOWNSSYS.TEM
- TOWNS.ICN 90576 TOWNSSYS.TEM
- TOWNS.SYS 2829 TOWNSSYS.TEM
-
- ファイル名 サイズ ラベル名
-
- といった、順番で出力されたはずです。これは、フロッピーに対しても
- 同様です。もうピンとこられた人もいらっしゃると思いますが、フロッピー
- 毎に違うラベル名を付けて、その分類に従ってファイルを入れておけば、
- 後はrootlistの出力を溜めておくだけで、簡易データベースの
- できあがりです。これがこのツールの唯一の使用方法です。
-
- 出力を溜めるには、リダイレクトを使用しましょう。具体的には、
- 以下のようなバッチファイルを作ります。名前は、ENTRY.BATとして
- おきましょう。rootlist.exeはパスの通ったディレクトリに置いて
- ください。
-
- ====== ENTRY.BAT ==============
- rootlist a: >> d:\rootlist.dat
- ===============================
-
- 例えば、MAG形式のファイルを入れるには、ラベルを MAG01, MAG02・・・・
- とフロッピーに付けると決めておきます。フロッピーにMAG形式のデータを
- 手辺り次第にほうりこんでいって、一杯になったら、そのフロッピーを
- Aドライブに入れて、ENTRY.BATを実行すれば、そのリストがrootlist.datに
- 溜まっていきます。
-
- さて、こうやった溜まったリストであるrootlist.datをどうやって検索す
- るのでしょうか。普通にテキストエディタで読み込んで、検索しても良いの
- ですが、どうせならコマンドラインから行えた方が良いでしょう。
- ここでは、grepというツールを既に手に入れているものとして話を進めます。
- 別にgrepでなくても、文字列をファイルの中から検索して、それが含まれる
- 行を表示する機能があれば、なんでもよいのです。cgrep, bfindなどが
- 役に立つでしょう。バッチファイルの名前は、G.BATにしましょう。
-
- ====== G.BAT ==================
- grep %1 d:\rootlist.dat
- ===============================
-
- もし通信中に、見たことのある、しかし疑わしいファイル名に出会った時
- には、すかさず・・・
-
- D> g ファイル名
-
- などとコマンドラインから指定すれば、そのファイルがなんのフロッピーに
- 含まれているか、あるいは含まれていないかがわかります。この時点で、
- 重複してファイルをダウンロードしてしまう危険性が大幅に現象するわけ
- です。
-
-
- ☆応用編
-
- さらに、このリストを用いて、『あるフロッピーに入っているファイル
- の中で、ひとつでも過去のファイルと重複がないか』を調べることもでき
- ます。これには、jgawkというツールを使用します。
-
- 以下に、そのバッチファイルのサンプルを上げておきますので、参考に
- して、自分の環境にあうよう変更してください。
-
- ====== CHKEND.DAT ==============================
- del d:\_.$$$
- del d:\chkchk.bat
- ================================================
-
- ====== GCHK.BAT ================================
- del d:\gout.log
- rootlist A: > d:\_.$$$
- jgawk -f D:\gchk.awk < d:\_.$$$ > d:\chkchk.bat
- type D:\chkend.dat >> d:\chkchk.bat
- d:\chkchk.bat
- ================================================
-
- ====== GCHK.AWK ================================
- {printf "grep %12s d:\\rootlist.dat >> d:\\gout.log \n",$1;
- printf "echo -------------------- >> d:\\gout.log \n" }
- ================================================
-
- Aドライブにフロッピーを挿入して、GCHK.BATを実行すると、Dドライブ
- にgout.logというファイルができます。この中に入ってるファイル名は、
- 過去に出てきたものです。単に、文字列で検索しているため、拾い間違い
- がたくさんあるかもしれませんが、大抵はラベル名で判別できるでしょう。
-
-
- ☆今後の課題
-
- これは、私の管理形態に基づいて作られたツールなので、かなり不便な
- 仕様となっています。まず、ディレクトリやその中まで、リストにはしま
- せん。これは、もともとフロッピー内にぼこぼこディレクトリ掘っても、
- 不透明さが増すだけで、全然検索性が向上しないため、そのような状態を
- 想定していないからです。もし、その機能が欲しい人は、私あてにメール
- を下さるようお願いします。できるだけ対処していきたいと思います。
-
-
- さもな nifty ID: NBE01062
-
-